From cf234a66ee41cb21450fe050a61a95c2dc1fff59 Mon Sep 17 00:00:00 2001 From: Jonathan Dieter Date: Mon, 11 Jun 2018 22:19:56 +0300 Subject: [PATCH] Run ABI test and bump to 0.7.1 Signed-off-by: Jonathan Dieter --- include/zck.h | 4 +- test/abi/stable/libzck.so.0.0.1 | Bin 195096 -> 195944 bytes test/abi/stable/zck.h | 13 +- .../zchunk/0.6.3_to_0.7.0/compat_report.html | 1278 ----------------- .../zchunk/0.7.0_to_0.7.1/compat_report.html | 517 +++++++ 5 files changed, 529 insertions(+), 1283 deletions(-) delete mode 100644 test/compat_reports/zchunk/0.6.3_to_0.7.0/compat_report.html create mode 100644 test/compat_reports/zchunk/0.7.0_to_0.7.1/compat_report.html diff --git a/include/zck.h b/include/zck.h index e8a517b..1d52a7a 100644 --- a/include/zck.h +++ b/include/zck.h @@ -1,10 +1,10 @@ #ifndef ZCK_H #define ZCK_H -#define ZCK_VERSION "0.7.0" +#define ZCK_VERSION "0.7.1" #define ZCK_VER_MAJOR 0 #define ZCK_VER_MINOR 7 -#define ZCK_VER_REVISION 0 +#define ZCK_VER_REVISION 1 #define ZCK_VER_SUBREVISION 0 #define True 1 diff --git a/test/abi/stable/libzck.so.0.0.1 b/test/abi/stable/libzck.so.0.0.1 index c9766b92adabed63907ada9c0eb9c26c005377fc..12cd9958bf7609daa5f115e80163c2f1d337d575 100755 GIT binary patch delta 55176 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 OAg}xCe8Vp+_5T1O+-#`; delta 52108 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 diff --git a/test/abi/stable/zck.h b/test/abi/stable/zck.h index 0de2c76..1d52a7a 100644 --- a/test/abi/stable/zck.h +++ b/test/abi/stable/zck.h @@ -1,10 +1,10 @@ #ifndef ZCK_H #define ZCK_H -#define ZCK_VERSION "0.7.0" +#define ZCK_VERSION "0.7.1" #define ZCK_VER_MAJOR 0 #define ZCK_VER_MINOR 7 -#define ZCK_VER_REVISION 0 +#define ZCK_VER_REVISION 1 #define ZCK_VER_SUBREVISION 0 #define True 1 @@ -133,6 +133,8 @@ char *zck_get_range_char(zckRange *range) /* Get file descriptor attached to zchunk context */ int zck_get_fd(zckCtx *zck) __attribute__ ((warn_unused_result)); +/* Set file descriptor attached to zchunk context */ +void zck_set_fd(zckCtx *zck, int fd); /* Return number of missing chunks (-1 if error) */ int zck_missing_chunks(zckCtx *zck) @@ -199,6 +201,8 @@ int zck_read_lead(zckCtx *zck) int zck_read_header(zckCtx *zck) __attribute__ ((warn_unused_result)); +int zck_validate_lead(zckCtx *zck) + __attribute__ ((warn_unused_result)); /******************************************************************* * Indexes @@ -288,6 +292,9 @@ void zck_dl_free(zckDL **dl); /* Get zchunk context from download context */ zckCtx *zck_dl_get_zck(zckDL *dl) __attribute__ ((warn_unused_result)); +/* Set zchunk context in download context */ +int zck_dl_set_zck(zckDL *dl, zckCtx *zck) + __attribute__ ((warn_unused_result)); /* Clear regex used for extracting download ranges from multipart download */ void zck_dl_clear_regex(zckDL *dl); /* Download and process the header from url */ @@ -303,7 +310,7 @@ size_t zck_dl_get_bytes_uploaded(zckDL *dl) int zck_dl_set_range(zckDL *dl, zckRange *range) __attribute__ ((warn_unused_result)); /* Get download ranges from zchunk download context */ -int zck_dl_set_range(zckDL *dl, zckRange *range) +zckRange *zck_dl_get_range(zckDL *dl) __attribute__ ((warn_unused_result)); /* Set header callback function */ diff --git a/test/compat_reports/zchunk/0.6.3_to_0.7.0/compat_report.html b/test/compat_reports/zchunk/0.6.3_to_0.7.0/compat_report.html deleted file mode 100644 index 101b0dc..0000000 --- a/test/compat_reports/zchunk/0.6.3_to_0.7.0/compat_report.html +++ /dev/null @@ -1,1278 +0,0 @@ - - - - - - - - - -zchunk: 0.6.3 to 0.7.0 compatibility report - - - -

API compatibility report for the libzck.so object between 0.6.3 and 0.7.0 versions on x86_64

- -
-
-

Test Info


- - - - - - - -
Module Namezchunk
Version #10.6.3
Version #20.7.0
Archx86_64
GCC Version8.1.1
SubjectBinary Compatibility
-

Test Results


- - - - - - - -
Total Header Files6
Total Source Files8
Total Objects1
Total Symbols / Types50 / 53
Compatibility85%
-

Problem Summary


- - - - - - - - - -
SeverityCount
Added Symbols-16
Removed SymbolsHigh2
Problems with
Data Types
High1
Medium17
Low7
Problems with
Symbols
High0
Medium1
Low0
Problems with
Constants
Low0
- -

Added Symbols  16 


-dl.c, libzck.so.0.0.1
-zck_dl_get_range ( zckDL* dl )
-zck_dl_get_zck ( zckDL* dl )
-zck_dl_set_header_cb ( zckDL* dl, zck_wcb func )
-zck_dl_set_header_data ( zckDL* dl, void* data )
-zck_dl_set_range ( zckDL* dl, zckRange* range )
-zck_dl_set_write_cb ( zckDL* dl, zck_wcb func )
-zck_dl_set_write_data ( zckDL* dl, void* data )
-
-index_read.c, libzck.so.0.0.1
-zck_compare_chunk_digest ( zckChunk* a, zckChunk* b )
-zck_get_chunk_comp_size ( zckChunk* idx )
-zck_get_chunk_count ( zckCtx* zck )
-zck_get_chunk_size ( zckChunk* idx )
-zck_get_chunk_start ( zckChunk* idx )
-zck_get_chunk_valid ( zckChunk* idx )
-zck_get_first_chunk ( zckCtx* zck )
-zck_get_next_chunk ( zckChunk* idx )
-
-range.c, libzck.so.0.0.1
-zck_get_range_count ( zckRange* range )
-
-to the top
-

Removed Symbols  2 


-index_read.c, libzck.so.0.0.1
-zck_get_index ( zckCtx* zck )
-zck_get_index_count ( zckCtx* zck )
-
-to the top
- -

Problems with Data Types, High Severity  1 


-zck.h
- -[+] struct zckDL  1  -
- - -
-to the top
- -

Problems with Data Types, Medium Severity  17 


-zck.h
- -[+] struct zckDL  17  -
- - -
-to the top
- -

Problems with Symbols, Medium Severity  1 


-hash.c, libzck.so.0.0.1
- -[+] zck_get_chunk_digest ( zckIndexItem* item )  1  -
- -
-to the top
- -

Problems with Data Types, Low Severity  7 


-zck.h
- -[+] struct zckDL  4  -
- - - -[+] struct zckIndex  1  -
- - -
-zck_private.h
- -[+] struct zckComp  1  -
- - - -[+] struct zckCtx  1  -
- - -
-to the top
-

Header Files  6 


-
-regex.h
-stddef.h
-stdint-uintn.h
-types.h
-zck.h
-zck_private.h
-
-
to the top
-

Source Files  8 


-
-comp.c
-dl.c
-hash.c
-header.c
-index_read.c
-log.c
-range.c
-zck.c
-
-
to the top
-

Objects  1 


-
-libzck.so.0.0.1
-
-
to the top
-


-

Test Info


- - - - - - -
Module Namezchunk
Version #10.6.3
Version #20.7.0
Archx86_64
SubjectSource Compatibility
-

Test Results


- - - - - - - -
Total Header Files6
Total Source Files8
Total Objects1
Total Symbols / Types50 / 53
Compatibility51%
-

Problem Summary


- - - - - - - - - - -
SeverityCount
Added Symbols-16
Removed SymbolsHigh2
Problems with
Data Types
High2
Medium3
Low12
Problems with
Symbols
High0
Medium1
Low0
Problems with
Constants
Low0
Other Changes
in Data Types
-6
- -

Added Symbols  16 


-dl.c
-zck_dl_get_range ( zckDL* dl )
-zck_dl_get_zck ( zckDL* dl )
-zck_dl_set_header_cb ( zckDL* dl, zck_wcb func )
-zck_dl_set_header_data ( zckDL* dl, void* data )
-zck_dl_set_range ( zckDL* dl, zckRange* range )
-zck_dl_set_write_cb ( zckDL* dl, zck_wcb func )
-zck_dl_set_write_data ( zckDL* dl, void* data )
-
-index_read.c
-zck_compare_chunk_digest ( zckChunk* a, zckChunk* b )
-zck_get_chunk_comp_size ( zckChunk* idx )
-zck_get_chunk_count ( zckCtx* zck )
-zck_get_chunk_size ( zckChunk* idx )
-zck_get_chunk_start ( zckChunk* idx )
-zck_get_chunk_valid ( zckChunk* idx )
-zck_get_first_chunk ( zckCtx* zck )
-zck_get_next_chunk ( zckChunk* idx )
-
-range.c
-zck_get_range_count ( zckRange* range )
-
-to the top
-

Removed Symbols  2 


-index_read.c
-zck_get_index ( zckCtx* zck )
-zck_get_index_count ( zckCtx* zck )
-
-to the top
- -

Problems with Data Types, High Severity  2 


-zck.h
- -[+] struct zckDL  2  -
- - -
-to the top
- -

Problems with Data Types, Medium Severity  3 


-zck.h
- -[+] struct zckIndex  1  -
- - -
-zck_private.h
- -[+] struct zckComp  1  -
- - - -[+] struct zckCtx  1  -
- - -
-to the top
- -

Problems with Symbols, Medium Severity  1 


-hash.c
- -[+] zck_get_chunk_digest ( zckIndexItem* item )  1  -
- -
-to the top
- -

Problems with Data Types, Low Severity  12 


-zck.h
- -[+] struct zckDL  12  -
- - -
-to the top
- -

Other Changes in Data Types  6 


-zck.h
- -[+] struct zckDL  6  -
- - -
-to the top
-

Header Files  6 


-
-regex.h
-stddef.h
-stdint-uintn.h
-types.h
-zck.h
-zck_private.h
-
-
to the top
-

Source Files  8 


-
-comp.c
-dl.c
-hash.c
-header.c
-index_read.c
-log.c
-range.c
-zck.c
-
-
to the top
-

Objects  1 


-
-libzck.so.0.0.1
-
-
to the top
-



- -
- - diff --git a/test/compat_reports/zchunk/0.7.0_to_0.7.1/compat_report.html b/test/compat_reports/zchunk/0.7.0_to_0.7.1/compat_report.html new file mode 100644 index 0000000..977922e --- /dev/null +++ b/test/compat_reports/zchunk/0.7.0_to_0.7.1/compat_report.html @@ -0,0 +1,517 @@ + + + + + + + + + +zchunk: 0.7.0 to 0.7.1 compatibility report + + + +

API compatibility report for the libzck.so object between 0.7.0 and 0.7.1 versions on x86_64

+ +
+
+

Test Info


+ + + + + + + +
Module Namezchunk
Version #10.7.0
Version #20.7.1
Archx86_64
GCC Version8.1.1
SubjectBinary Compatibility
+

Test Results


+ + + + + + + +
Total Header Files1
Total Source Files8
Total Objects1
Total Symbols / Types62 / 20
Compatibility100%
+

Problem Summary


+ + + + + + + + + +
SeverityCount
Added Symbols-4
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium0
Low0
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low0
+ +

Added Symbols  4 


+zck.h, libzck.so.0.0.1
+zck_dl_set_zck ( zckDL* dl, zckCtx* zck )
+zck_failed_chunks ( zckCtx* zck )
+zck_set_fd ( zckCtx* zck, int fd )
+zck_validate_lead ( zckCtx* zck )
+
+to the top
+

Header Files  1 


+
+zck.h
+
+
to the top
+

Source Files  8 


+
+comp.c
+dl.c
+hash.c
+header.c
+index_read.c
+log.c
+range.c
+zck.c
+
+
to the top
+

Objects  1 


+
+libzck.so.0.0.1
+
+
to the top
+


+

Test Info


+ + + + + + +
Module Namezchunk
Version #10.7.0
Version #20.7.1
Archx86_64
SubjectSource Compatibility
+

Test Results


+ + + + + + + +
Total Header Files1
Total Source Files8
Total Objects1
Total Symbols / Types62 / 20
Compatibility100%
+

Problem Summary


+ + + + + + + + + +
SeverityCount
Added Symbols-5
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium0
Low0
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low0
+ +

Added Symbols  5 


+zck.h
+zck_dl_get_range ( zckDL* dl )
+zck_dl_set_zck ( zckDL* dl, zckCtx* zck )
+zck_failed_chunks ( zckCtx* zck )
+zck_set_fd ( zckCtx* zck, int fd )
+zck_validate_lead ( zckCtx* zck )
+
+to the top
+

Header Files  1 


+
+zck.h
+
+
to the top
+

Source Files  8 


+
+comp.c
+dl.c
+hash.c
+header.c
+index_read.c
+log.c
+range.c
+zck.c
+
+
to the top
+

Objects  1 


+
+libzck.so.0.0.1
+
+
to the top
+



+ +
+ + -- 2.30.2